﻿using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;

namespace StudentInfo.Areas.StudentArea.ViewModels
{
    public struct MarkInfo
    {
        public int Id { get; set; }
        public string ExamName { get; set; }
    }

    public struct ProjectInfo
    {
        public int Id { get; set; }
        public string ProjectName { get; set; }
    }

    public class StudentViewModel
    {
        public int Id { get; set; }

        [Display(Name = "Фамилия")]
        [Required(ErrorMessage = "Поле {0} обязательно для заполнения")]
        public string StudentName { get; set; }

        [Display(Name = "Год рождения")]
        [DataType(DataType.Date)]
        [RegularExpression(@"^(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.](19|20)\d\d$",
            ErrorMessage = "Некорректные данные - {0}")]
        public string Year { get; set; }

        [Display(Name = "Список оценок")]
        public List<MarkInfo> MarkList { get; set; }

        [Display(Name = "Список проектов")]
        public List<ProjectInfo> ProjectList { get; set; }
    }
}